try{var templatecount = 0;
var templatedowncount = 0;
var app = {
		gettemplate : function(url) {
			try {
				//alert('gettemplate='+url);
				window.templatecount = window.templatecount + 1;
				//alert('window.templatecount='+window.templatecount);
				if (window.localStorage.hversion == undefined
						|| window.localStorage.hversion < vhversion
						|| vhversion == 1) {
					//alert('localStorage='+vhversion);
					window.localStorage.hversion = vhversion;
					var uri = encodeURI(TEMPLATE_URL + url);
					//alert('uri='+uri);
					var fileTransfer = new FileTransfer();
					fileTransfer
					.download(
							uri,
							encodeURI(cordova.file.dataDirectory + url),
							function(entry) {
								//alert('download='+uri);
								window.templatedowncount = window.templatedowncount + 1;
								if (window.templatedowncount == window.templatecount) {
									app.transindex();
								}
								console.log(entry);
							},
							function(error) {
								alert('download err='+uri);
								app.transindex();
								console.log(error);
							},
							true,
							{
								headers : {
									"Authorization" : "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
								}
							});
				}
			} catch (e) {
				alert(e.message);
				app.transindex();
				console.log(e);
			}
		},
		transindex : function() {

			//alert('transindex')
			location.replace(cordova.file.applicationDirectory + 'www/index.html');
		},
		// Application Constructor
		initialize : function() {
			//alert('initialize')
			this.bindEvents();
		},
		// Bind Event Listeners
		//
		// Bind any events that are required on startup. Common events are:
		// 'load', 'deviceready', 'offline', and 'online'.
		bindEvents : function() {
			document.addEventListener('deviceready', this.onDeviceReady, false);
		},
		// deviceready Event Handler
		//
		// The scope of 'this' is the event. In order to call the 'receivedEvent'
		// function, we must explicitly call 'app.receivedEvent(...);'
		onDeviceReady : function() {
			try {
				//alert('onDeviceReady')
				var success = function(status) {
				}

				var error = function(status) {
					alert('Error: ' + status);
				}

				window.cache.clear( success, error );
				//推送
				window.plugins.jPushPlugin.init(); 
				window.plugins.jPushPlugin.setDebugMode(true);
				//alert('onDeviceReady');
				window.templatedowncount = 0;
				window.templatecount = 0;
//				app.gettemplate('index.html');
//				app.gettemplate('userapp.main.html');
//				app.gettemplate('userapp.index.html');// 'ShopCtrl'});
//				app.gettemplate('userapp.goods.list.html');// 'SearchCtrl'});
//				app.gettemplate('userapp.goods.list.html');// 'SearchCtrl'});
//				app.gettemplate('userapp.cart.html');// 'ShopCtrl'});
//				app.gettemplate('userapp.category.html');// 'ShopCtrl'});
//				app.gettemplate('userapp.goods.list.html');// 'CategoryCtrl'});
//				app.gettemplate('userapp.goods.info.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.order.pre.html');// 'OrderCtrl'});
//
//				app.gettemplate('userapp.order.pre.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.order.list.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.order.info.html');// 'OrderCtrl'});
//				/* 卡 */
//				app.gettemplate('userapp.card.list.html');// 'CardsCtrl'});
//				app.gettemplate('userapp.card.info.html');// 'CardsCtrl'});
//				app.gettemplate('userapp.user.html');// 'MyCtrl'});
//				/* 好友管理 */
//				app.gettemplate('userapp.friend.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.friend.shop.html');// 'UserappFriendshop'});
//
//				app.gettemplate('userapp.friend.add.html');// 'UserappFriendadd'});
//				app.gettemplate('userapp.friendlist.add.html');// 'UserappFriendlistAdd'});
//				//app.gettemplate('userapp.friend.store.html');// 'friendCtrl'});
//
//				app.gettemplate('userapp.friend.center.html');// 'UserappFriendCenter'});
//				app.gettemplate('userapp.friend.info.html');// 'UserappFriendinfo'});
//				app.gettemplate('userapp.friend.information.html');// 'UserappFriendInformation'});
//				app.gettemplate('userapp.friend.information.shop.html');// 'UserappFriendInformationshop'});
//				app.gettemplate('userapp.friend.message.html');// 'UserappFriendMessage'});
//				app.gettemplate('userapp.friend.new.html');// 'friendCtrl'});
//				app.gettemplate('userapp.friend.quanzi.html');// 'friendCtrl'});			
//
//				app.gettemplate('userapp.address.html');// 'AddressCtrl'});
//				app.gettemplate('userapp.address.edit.html');// 'AddressCtrl'});
//				app.gettemplate('userapp.address.select.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.address.region.html');// 'AddressCtrl'});
//				app.gettemplate('userapp.user.edit.html');// 'MyCtrl'});
//				app.gettemplate('userapp.login.html');// 'UserCtrl'});
//				app.gettemplate('userapp.register.html');// 'UserCtrl'});
//				app.gettemplate('userapp.store.takeinfo.html');// 'TakeInfo'});
//				app.gettemplate('userapp.store.takeout.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.address.select.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.takeoutorder.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.takeoutordermain.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.lsearch.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.map.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.hall.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.hallorder.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.hallordermain.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.order.suc.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.order.eval.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.sorder.eval.html');// 'OrderCtrl'});
//				app.gettemplate('userapp.store.index.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.index1.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.info.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.store.info1.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.article.info.html');// 'ArticleCtrl'});
//				app.gettemplate('network.html');// 'NetworkCtrl'});
//				app.gettemplate('comesoon.html');
//				app.gettemplate('userapp.goods.comment.html');// 'GoodsCtrl'});
//				app.gettemplate('demo.html');// 'GoodsCtrl'});
//
//				app.gettemplate('userapp.topic.html');// 'StoreCtrl'});
//				app.gettemplate('userapp.topic.info.html');// 'ArticleCtrl'});
//				app.gettemplate('userapp.topic.choose.html');// 'NetworkCtrl'});
//				app.gettemplate('userapp.topic.follow.html');
//				app.gettemplate('userapp.weibo.pub.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.weibo.rec.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.ncategory.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.topic.info.w.html');// 'GoodsCtrl'});
//
//				app.gettemplate('userapp.gift.fromme.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.gift.tome.html');// 'GoodsCtrl'});
//
//				app.gettemplate('userapp.friend.pub.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.mycard.list.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.mycard.info.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.mycard.detail.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.friendfc.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.proposal.html');// 'ProposalCtrl'});
//				app.gettemplate('userapp.friendcd.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.friendmd.html');// 'FriendCtrl'});
//
//				app.gettemplate('userapp.user.setpassword.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.paypassword.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.integral.info.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.integral.html');// 'GoodsCtrl'});
//				app.gettemplate('userapp.user.balance.info.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.balance.html');// 'MyCtrl'});
//				app.gettemplate('userapp.user.charge.balance.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.charge.integral.html');// 'FriendCtrl'});
//				app.gettemplate('userapp.user.coupon.html');// 'MyCtrl'});
//				app.gettemplate('userapp.store.comment.html');
//				app.gettemplate('userapp.misspassword.html');
//				app.gettemplate('userapp.region.html');
//				app.gettemplate('userapp.rcode.html');
				
				
				app.gettemplate('index.html');
				app.gettemplate('adabout1.html');
				app.gettemplate('adabout2.html');
				app.gettemplate('adabout3.html');
				app.gettemplate('base.article.info.html');
				app.gettemplate('base.consult.do.html');
				app.gettemplate('base.consult.evaluation.html');
				app.gettemplate('base.consult.html');
				app.gettemplate('base.login.html');
				app.gettemplate('base.loginmain.html');
				app.gettemplate('base.register.html');
				app.gettemplate('base.resetpwd.html');
				app.gettemplate('base.stage.html');
				app.gettemplate('base.tutorreg.step1.html');
				app.gettemplate('base.tutorreg.step2.html');
				app.gettemplate('base.tutorreg.step3.html');
				app.gettemplate('base.tutuor.follow.wzx.html');
				app.gettemplate('base.tutuor.follow.yzx.html');
				app.gettemplate('base.ucenter.html');
				app.gettemplate('base.uedit.html');
				app.gettemplate('base.user.agegroup.html');
				app.gettemplate('base.user.nickname.html');
				app.gettemplate('base.user.sex.html');
				app.gettemplate('base.user.tutorcity.html');
				app.gettemplate('base.user.tutoremail.html');
				app.gettemplate('base.user.tutorname.html');
				app.gettemplate('base.user.tutorop.html');
				app.gettemplate('base.user.tutortel.html');
				app.gettemplate('base.user.tutortrade.html');
				app.gettemplate('comesoon.html');
				app.gettemplate('find.question.html');
				app.gettemplate('find.replay.html');
				app.gettemplate('loading.html');
				app.gettemplate('message.html');
				app.gettemplate('my_consultant.html');
				app.gettemplate('network.html');
				app.gettemplate('start.html');
				app.gettemplate('user.bag.html');
				app.gettemplate('user.chatmsg.html');
				app.gettemplate('user.order.html');
				app.gettemplate('user.tutor.center.html');
				app.gettemplate('user.tutor.consult.html');
				app.gettemplate('user.tutor.evaluation.html');
				app.gettemplate('user.tutor.index.html');
				app.gettemplate('user.tutor.note.html');
				app.gettemplate('user.withdrawals.html');
				app.gettemplate('user.withdrawals.list.html');
				app.gettemplate('wallet.html');
				
				app.gettemplate('tutor_center.html');
				app.gettemplate('tutor_index.html');
				app.gettemplate('tutor_orders.html');
				app.gettemplate('tutor_orders2.html');
				app.gettemplate('base.index.html');
				app.gettemplate('base.user.invitation.html');
				app.gettemplate('base.user.feedback.html');
				app.gettemplate('tutor.student.eva.yzx.html');
				app.gettemplate('base.user.invitation.selectf.html');
				app.gettemplate('base.othertelmodify.html');
				app.gettemplate('user.appointtutor.html');
				
			} catch (e) { 
				alert(e);
				app.transindex();
				console.log(e);
			}
		},
		// Update DOM on a Received Event
		receivedEvent : function(id) {
			console.log('Received Event: ' + id);
		}
};

app.initialize();
} catch (e) { 
	alert(e);
	console.log(e);
}